package br.com.bacabeleireiros.sysbeleza.entity;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.ForeignKey;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

@Entity
@Table(name="servico_produto")
public class ServicoProduto implements Serializable {
	
	private static final long serialVersionUID = 1L;
	private Long idServicoProduto;
	private Servico servico;
	private Produto produto;
	
	public ServicoProduto() {
		servico = new Servico();
		produto = new Produto();
	}
	
	@Id
	@SequenceGenerator(name = "seqServicoProduto", sequenceName = "seq_servico_produto", allocationSize = 1)
	@GeneratedValue(generator = "seqServicoProduto", strategy = GenerationType.SEQUENCE)	
	@Column(name = "id_servico_produto")
	public Long getIdServicoProduto() {
		return idServicoProduto;
	}

	public void setIdServicoProduto(Long idServicoProduto) {
		this.idServicoProduto = idServicoProduto;
	}

	@ManyToOne
	@JoinColumn(name = "id_servico", foreignKey = @ForeignKey(name = "fk_servico_produto_servico"))	
	public Servico getServico() {
		return servico;
	}

	public void setServico(Servico servico) {
		this.servico = servico;
	}

	@ManyToOne
	@JoinColumn(name = "id_produto", foreignKey = @ForeignKey(name = "fk_servico_produto_produto"))	
	public Produto getProduto() {
		return produto;
	}

	public void setProduto(Produto produto) {
		this.produto = produto;
	}

}
